﻿/*  Eleven Business Suite : Un ERP básico para pequeños empresarios.
 *  Copyright (C) 2011  Francis Bolaños Arias
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>;.
 */

using System;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ElevenData;

namespace ElevenCore
{
    public class CONEmpresa
    {
        private string _CedJuridica;
        private string _Nombre;
        private string _NombreJuridico;
        private string _Direccion;
        private string _Telefono;
        private string _Telefono2;
        private string _Fax;
        private string _Correo;
        private string _SitioWeb;
        private Validador valida = new Validador();

        public CONEmpresa() { }

        public CONEmpresa(string CedJuridica, string Nombre, string NombreJuridico, string Direccion
            , string Telefono, string Telefono2, string Fax, string Correo, string SitioWeb)
        {
            this.CedJuridica = CedJuridica;
            this.Nombre = Nombre;
            this.NombreJuridico = NombreJuridico;
            this.Direccion = Direccion;
            this.Telefono = Telefono;
            this.Telefono2 = Telefono2;
            this.Fax = Fax;
            this.Correo = Correo;
            this.SitioWeb = SitioWeb;
        }

        public string CedJuridica
        {
            get { return _CedJuridica; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _CedJuridica = value;
                }
                else
                {
                    _CedJuridica = "ND";
                }
            }
        }

        public string Nombre
        {
            get { return _Nombre; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Nombre = value;
                }
                else
                {
                    throw new ValidadorException("El nombre no puede ir en blanco.");
                }
            }
        }

        public string NombreJuridico
        {
            get { return _NombreJuridico; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _NombreJuridico = value;
                }
                else
                {
                    _NombreJuridico = "ND";
                }
            }
        }

        public string Direccion
        {
            get { return _Direccion; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Direccion = value;
                }
                else
                {
                    _Direccion = "ND";
                }
            }
        }

        public string Telefono
        {
            get { return _Telefono; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Telefono = value;
                }
                else
                {
                    _Telefono = "ND";
                }
            }
        }

        public string Telefono2
        {
            get { return _Telefono2; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Telefono2 = value;
                }
                else
                {
                    _Telefono2 = "ND";
                }
            }
        }

        public string Fax
        {
            get { return _Fax; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Fax = value;
                }
                else
                {
                    _Fax = "ND";
                }
            }
        }

        public string Correo
        {
            get { return _Correo; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _Correo = value;
                }
                else
                {
                    _Correo = "ND";
                }
            }
        }

        public string SitioWeb
        {
            get { return _SitioWeb; }
            set
            {
                if (!valida.validarEsVacio(value))
                {
                    _SitioWeb = value;
                }
                else
                {
                    _SitioWeb = "ND";
                }
            }
        }

        public static DataTable consultar()
        {
            return Consultar.ConsultarDatosEmpresa();
        }

        public static bool insertar()
        {
            return Insertar.insertarDatosEmpresaNueva();
        }

    }
}
